Information processing apparatus that switches languages to be displayed, control method therefor, and storage medium

ABSTRACT

An information processing apparatus which is capable of reliably switching display languages in response to depression of a language switching button. A display language on a display unit is switched to a language selected by a user from a list of languages displayed on the display unit. In response to selection of a language switching button by the user, the display language on the display unit is switched to one of a plurality of languages associated with the language switching button. Currently-displayed language information indicating a language currently displayed on the display unit is obtained when the language switching button is selected by the user. When the language switching button is selected by the user, the display language on the display unit is switched to one of the plurality of languages associated with the language switching button and different from a language currently displayed on the display unit.

BACKGROUND OF THE INVENTION Field of the Invention

The present invention relates to an information processing apparatus, acontrol method therefor, and a storage medium.

Description of the Related Art

In recent years, a plurality of users who use different languages hasincreasingly used the same information processing apparatus such as anMFP. To cope with such cases, for example, a display language can beswitched using a display language setting screen displayed on thedisplay unit. The display language setting screen includes a list oflanguages that can be displayed on the display unit. The displaylanguage on the display unit is switched to a language selected from thelist of languages by the user (see, for example, Japanese Laid-OpenPatent Publication (Kokai) No. 2005-205598).

In Japanese Laid-Open Patent Publication (Kokai) No. 2005-205598,however, it is necessary to select environment setting and displaysetting on a home screen in order to set the display language, and henceoperation for setting the display language becomes complicated.

SUMMARY OF THE INVENTION

The present invention provides an information processing apparatus whichis capable of reliably switching display languages in response todepression of a language switching button, a control method therefor,and a storage medium.

Accordingly, the present invention provides an information processingapparatus that has a display unit and switches a display language on thedisplay unit, comprising a first switching unit configured to switch thedisplay language on the display unit to a language selected by a userfrom a list of languages displayed on the display unit, a secondswitching unit configured to, in response to selection of a languageswitching instruction receiving button by the user, switch the displaylanguage on the display unit to one of a plurality of languagesassociated with the language switching instruction receiving button, andan obtaining unit configured to obtain currently-displayed languageinformation indicating a language currently displayed on the displayunit in response to switching by the first switching unit or the secondswitching unit when the language switching instruction receiving buttonis selected by the user, wherein in a case where the language switchinginstruction receiving button is selected by the user, the secondswitching unit switches the display language on the display unit to oneof the plurality of languages associated with the language switchinginstruction receiving button and different from a language currentlydisplayed on the display unit.

According to the present invention, display languages are reliablyswitched in response to depression of the language switching button.

Further features of the present invention will become apparent from thefollowing description of exemplary embodiments (with reference to theattached drawings).

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram schematically showing an arrangement of an MFPwhich is an information processing apparatus according to an embodimentof the present invention.

FIG. 2 is a block diagram schematically showing a software arrangementof the MFP in FIG. 1.

FIG. 3 is a view showing an example of a home screen which is displayedon a display unit in FIG. 1.

FIGS. 4A to 4F are views useful in explaining a first switching processin which a display language on the display unit in FIG. 1 is switched.

FIG. 5 is a view showing a setting screen on which settings for use in asecond switching process in which a display language on the display unitin FIG. 1 is switched are configured.

FIG. 6 is a view useful in explaining the second switching process inwhich a display language on an operating unit in FIG. 1 is switched.

FIG. 7 is a flowchart showing the procedure of a display languageswitching process which is carried out by the MFP in FIG. 1.

FIG. 8 is a flowchart showing the procedure of a currently-displayedlanguage information obtaining process in step S702 in FIG. 7.

FIG. 9 is a flowchart showing the procedure of a switching languageinformation changing process which is carried out by the MFP in FIG. 1.

FIG. 10 is a view showing an example of a dialogue which is displayed onthe display unit in a process in step S905 in FIG. 9.

FIG. 11 is a view showing an example of a dialogue which is displayed onthe display unit in a process in step S908 in FIG. 9.

FIGS. 12A and 12B are views showing examples of a screen which isdisplayed on the display unit in a process in step S910 in FIG. 9.

FIG. 13 is a flowchart showing the procedure of a variation of thedisplay language switching process in FIG. 7.

FIGS. 14A and 14B are views showing examples of switching languageinformation and setting values for use in the display language switchingprocess in FIG. 13.

DESCRIPTION OF THE EMBODIMENTS

An embodiment of the present invention will now be described in detailwith reference to the drawings. It should be noted in the followingdescription of the present embodiment, the present invention is appliedto an MFP which is an information processing apparatus switching displaylanguages on a display unit, but the present invention is not limited tothe MFP. For example, the present invention may also be applied to otherapparatuses such as a mobile terminal and a client PC switching displaylanguages on a display unit.

FIG. 1 is a block diagram schematically showing an arrangement of an MFP100 which is an information processing apparatus according to theembodiment of the present invention. Referring to FIG. 1, the MFP 100has a CPU 101, a ROM 102, a RAM 103, a display controller 104, a displayunit 105, an operation controller 106, an operating unit 107, an eMMChost controller 108, an eMMC 109, a reading controller 110, a readingunit 111, a recording controller 112, a recording unit 113, a USB hostcontroller 114, a modem 115, an NCU (Network Control Unit) 116, and aNIC (Network Interface Card) 117. The CPU 101, the ROM 102, the RAM 103,the display controller 104, the operation controller 106, the eMMC hostcontroller 108, the reading controller 110, the recording controller112, the USB host controller 114, the modem 115, and the NIC 117 areconnected to one another via a system bus 118.

The MFP 100 is an image forming apparatus which carries out an imageforming process. A plurality of native applications implementing acopying function, a scanning function, and a faxing function isinstalled in advance in the MFP 100. In addition to the plurality ofnative applications, expansion applications which expand functions canbe installed in the MFP 100. In the present embodiment, it is assumedthat an expansion application 210 in FIG. 2, to be described later, hasalready been installed in the MFP 100.

The CPU 101 integratedly controls the devices connected to the systembus 118. For example, when power is supplied to the MFP 100, the CPU 101executes a boot program stored in the ROM 102. The ROM 102 storesprograms and various pieces of data. The RAM 103 is used as a work areafor the CPU 101 and also used as a temporary storage area for each pieceof data. The display controller 104 is connected to the display unit105. The display controller 104 performs display control in the displayunit 105. The display unit 105 is an LCD which displays a bitmappedimage in full screen in a WVGA size. The operation controller 106 isconnected to the operating unit 107. The operation controller 106obtains input information, which is input to the operating unit 107,from the operating unit 107. The operating unit 107 is a touch panelplaced on the display unit 105. A user inputs, for example, instructionsfor processes by depressing operating buttons or the like displayed onthe display unit 105. The eMMC host controller 108 is connected to theeMMC 109. The CPU 101 accesses the eMMC 109 via the eMMC host controller108. The eMMC 109 stores image data, each piece of setting data on theMFP 100, and so forth.

The reading controller 110 is connected to the reading unit 111 andcontrols operation of the reading unit 111. The reading unit 111 readsoriginals placed on it. The reading unit 111 has an auto document feeder(not shown) attached thereto and is able to automatically read aplurality of originals. The recording controller 112 is connected to therecording unit 113 and controls operation of the recording unit 113. Therecording unit 113 performs printing on sheets using anelectrophotographic process. The USB host controller 114 controls USBprotocols and acts as an arbitrator for access to a USB device such as aUSB memory connected to the MFP 100. The modem 115 is connected to theNCU 116. The modem 115 performs modulation and demodulation of signalsrequired for facsimile communications. The signals modulated by themodem 115 are transmitted to a public switched telephone network (PSTN)via the NCU 116. The NIC 117 sends and receives data such as emails andfiles to an external apparatus (not shown) via a LAN 119.

FIG. 2 is a block diagram schematically showing a software arrangementof the MFP 100 in FIG. 1. Referring to FIG. 2, the MFP 100 has an OS(Operating System) 201, a UI (User Interface) 202, a job controller 203,a fax 204, a send 205, a storage 206, a scan 207, a print 208, a devicedriver 209, the expansion application 210, a VM (Virtual Machine)/FW(Framework) 211, and a UI device controller 212 as software modules.Processes carried out by the above software modules are implemented bythe CPU 101 executing main programs loaded into the RAM 103.

The OS 201 manages and controls execution of processes carried out bythe software modules. The OS 201 is combined with the device driver 209.The UI 202 provides various types of information to the user via thedisplay unit 105 and the operating unit 107 and receives variousinstructions from the user. The job controller 203 controls execution ofjobs when it has received instructions to execute the jobs such ascopying, printing, and faxing. The fax 204 carries out facsimilecommunications with an external apparatus via the modem 115 and the NCU116. The send 205 carries out data communications with an externalapparatus via the NIC 117. The storage 206 controls processes in whichdata such as image data to be faxed and setting data on the MFP 100 arestored in the eMMC 109. The scan 207 reads originals by controlling thereading unit 111. The print 208 performs printing on sheets bycontrolling the recording unit 113.

In the MFP 100, when, for example, the job controller 203 has received afax job in which a placed original is faxed to an external apparatus,the scan 207 starts a scanning process by controlling the reading unit111. As a result, the placed original is read, and facsimile image datais generated based on information that has been read. The facsimileimage data is stored in the eMMC 109 by the storage 206. After that, thefax unit 204 reads out the stored facsimile image data and transmits thefacsimile image data to the external apparatus via the NCU 116 by fax.

The device driver 209 acts as an arbitrator for data transfer betweenthe software modules described above and hardware devices such as thedisplay controller 104, the operation controller 106, and the readingcontroller 110. The expansion application 210 is a module installed toextend the function of the MFP 100. The function of the expansionapplication 210 will be described later. The expansion application 210is comprised of an arbitrary program described in a script language. Forthe expansion application 210, languages such as Java (registeredtrademark) and Lua that are interpreters interpreting and executing bytecodes are used.

The VM/FW 211 installs and uninstalls an expansion application comprisedof an arbitrary program described in a script language or apredetermined high-level language. The VM/FW 211 performs, for example,arbitration between the installed expansion application and the nativeapplications incorporated in advance. The VM/FW 211 carries out aprocess using the expansion application 210 by interpreting the scriptlanguage constituting the expansion application 210. Also, when an eventrelated to the expansion application 210 occurs, the VM/FW 211 sends amessage to the expansion application 210. Examples of the event includea key input detected by the UI 202 and expiration of a timer managed bythe VM/FW 211. Upon detecting an abnormal condition in a program of theexpansion application 210, the VM/FW 211 forcibly terminates theprogram. Examples of the abnormal condition include lack of response toa message sent to the expansion application 210. The UI devicecontroller 212 acts as an arbitrator in transmitting a display requestreceived from the UI 202 or the expansion application 210 to the displayunit 105. The UI device controller 212 also acts as an arbitrator intransmitting input information input by the user via the operating unit107 to UI 202 or the expansion application 210.

In the MFP 100, when, for example, the user issues an instruction tostart a copy job using a native application of the MFP 100 by using theoperating unit 107, the device driver 209 is notified of a piece ofoperational information indicating the instruction to start the copy jobvia the operation controller 106. The device driver 209 notifies the UIdevice controller 212 of the piece of operational information. Based onthe piece of operational information, the UI device controller 212determines that a native application will be used, and notifies the UI202 of the piece of operational information. Based on the piece ofoperational information, the UI 202 requests the job controller 203 tostart a copying process.

Also, in the MFP 100, when, for example, the user issues an instructionto start an expansion application job using the expansion application210 by using the operating unit 107, the device driver 209 is notifiedof another piece of operational information indicating the instructionto start the expansion application job via the operation controller 106.The device driver 209 notifies the UI device controller 212 of the otherpiece of operational information. Based on the other piece ofoperational information, the UI device controller 212 determines thatthe expansion application 210 will be used, and notifies the expansionapplication 210 of the other piece of operational information via theVM/FW 211. Based on the other piece of operational information, theexpansion application 210 determines that the start of the expansionapplication job has been instructed, and requests the job controller 203to start an expansion application job process via the VM/FW 211.

FIG. 3 is a view showing an example of a home screen 301 which isdisplayed on the display unit 105 in FIG. 1. A plurality of applicationbuttons for calling applications of the MFP 100 is displayed on the homescreen 301. For example, when the user depresses a language switchingbutton 302 (language switching instruction receiving button), theexpansion application 210 associated with the language switching button302 is started to carry out a process. The number of buttons that can bedisplayed on the home screen 301 is prescribed in advance. The userdisplays other application buttons on the display unit 105 by depressingswitching buttons 303 and 304 on the home screen 301.

FIGS. 4A to 4F are views useful in explaining a first switching processin which display languages on the display unit 105 in FIG. 1 areswitched.

In the MFP 100, when the user depresses a menu button 401 included in ahome screen 400 in FIG. 4A, a menu screen 402 in FIG. 4B is displayed onthe display unit 105. A plurality of setting items such as environmentsettings and maintenance settings on the MFP 100 is displayed on themenu screen 402. When the user depresses an environment setting 403 onthe menu screen 402, an environment setting screen 404 in FIG. 4C isdisplayed on the display unit 105. A plurality of setting items such assettings on display on the display unit 105, a keyboard layout, andtimer settings is displayed on the environment setting screen 404. Whenthe user depresses a display setting 405 on the environment settingscreen 404, a display setting screen 406 in FIG. 4D is displayed on thedisplay unit 105. A plurality of setting items relating to display onthe display unit 105 is displayed on the display setting screen 406.When the user depresses a display language switch 407 on the displaysetting screen 406, a display language switching screen 408 in FIG. 4Eis displayed on the display unit 105. List information on languages thatcan be displayed on the display unit 105 is displayed on the displaylanguage switching screen 408. When the user selects one language fromthe list information on the display language switching screen 408, adisplay language on the display unit 105 is switched to the languageselected on the display language switching screen 408 as with a homescreen 409 in FIG. 4F. Language setting information indicating thelanguage selected on the display language switching screen 408 is storedin the eMMC 109. The first switching process is carried out by the UIdevice controller 212 providing notification to the UI 202 in responseto a user operation received by the operating unit 107.

In the MFP 100, the display language on the display unit 105 can beswitched by a second switching process different from the firstswitching process described above. In the second switching process, thedisplay language on the display unit 105 is switched by the userdepressing the language switching button 302 corresponding to theexpansion application 210 which is the language switching application,not by using the display language switching screen 408.

FIG. 5 is a view showing a setting screen 500 on which settings for usein the second switching process in which the display language on thedisplay unit 105 in FIG. 1 is switched are configured. For example, thesetting screen 500 is displayed on a client terminal (not shown)connected to the MFP 100 via the LAN 119 or the Internet when the clientterminal accesses the MFP 100 by using a Web browser.

On the setting screen 500, languages switched when the user depressesthe language switching button 302 and the order of preferred languagesare set. The setting screen 500 has setting fields 501 to 505 and an OKbutton 506. In the setting fields 501 to 505, one language is selectedfrom languages that can be displayed on the display unit 105. Namely, inthe present embodiment, a plurality of languages to be switched when theuser depresses the language switching button 302 can be set on thesetting screen 500, and a notification is provided to makes sure thatlanguages are set in at least the setting fields 501 and 502. On thesetting screen 500, preferred languages are set in the setting fields501 to 505 in this order. When the user selects the OK button 506 withlanguages set on the setting screen 500, switching language informationin which the languages set in the setting fields 501 to 505 are writtenin this order is generated. The switching language information is sentto the MFP 100. The MFP 100 stores the obtained switching languageinformation in the eMMC 109 or the like and associates the switchinglanguage information with the language switching button 302.

FIG. 6 is a view useful in explaining the second switching process inwhich the display language on the operating unit 107 in FIG. 1 isswitched. In the following description, it is assumed that, for example,switching language information in which “Japanese”, “English”, and“French” are set in this order is stored in the eMMC 109. The secondswitching process is carried out by the UI device controller 212providing notification to the expansion application 210, which is thelanguage switching application, via the VM/FW211 in response todepression of the language switching button 302.

In the MFP 100, when the user depresses the language switching button302 with the display language being “Japanese” as with a home screen 601in FIG. 6, the display language is switched to “English” as with a homescreen 602. When the user depresses the language switching button 302with the display language being “English”, the display language isswitched to “French” as with a home screen 603. When the user depressesthe language switching button 302 with the display language being“French”, the display language is switched to “Japanese” as with thehome screen 601. Thus, in the present embodiment, whenever the languageswitching button 302 is depressed, the display language is switchedaccording to the order set in the switching language information.

There are cases where the display language is not switched even when theuser depresses the language switching button 302. For example, assumethat one user switches the display language from “Japanese” to “English”using the display language switching screen 408 in the MFP 100 in whichthe switching language information indicating “Japanese”, “English”, and“French” in order of preference is stored in the eMMC 109 as describedabove. When the other user then depresses the language switching button302 with the display language being “English”, the other user expectsthe display language to switch to “French”. The expansion application210, however, cannot recognize the instruction which was issued usingthe display language switching screen 408 before the language switchingbutton 302 was depressed. The expansion application 210 thus recognizesthe depression of the language switching button 302 by the other user asan instruction to switch from “Japanese” to “English”. For this reason,although the display language is “English”, the expansion application210 sets the display language at “English”, and the display language isnot switched, which confuses the user.

To cope with this problem, in the present embodiment, when the user hasdepressed the language switching button 302, the display language on thedisplay unit 105 is switched to one language that is one of a pluralityof languages set in the switching language information and is differentfrom a language currently displayed on the display unit 105.

FIG. 7 is a flowchart showing the procedure of a display languageswitching process which is carried out by the MFP 100 in FIG. 1.

The process in FIG. 7 is based on the assumption that, for example, theswitching language information indicating “Japanese”, “English”, and“French” as the order of language preferences is stored in the eMMC 109as described above.

Referring to FIG. 7, first, when the user depresses the languageswitching button 302 (YES in step S701), the CPU 101 carries out acurrently-displayed language information obtaining process in FIG. 8, tobe described later (step S702). In the step S702, the CPU 101 obtainscurrently-displayed language information, which is stored in the eMMC109, from the storage 206. The currently-displayed language informationis information indicating a language currently being displayed on thedisplay unit 105 (hereafter referred to as “the currently-displayedlanguage”). Next, the CPU 101 obtains switching language informationfrom the storage 206 (step S703). Then, the CPU 101 determines whetheror not the currently-displayed language is included in the switchinglanguage information (step S704).

As a result of the determination in the step S704, when thecurrently-displayed language is included in the switching languageinformation, the CPU 101 determines whether or not thecurrently-displayed language is set at the end of the switching languageinformation (step S705).

As a result of the determination in the step S705, when thecurrently-displayed language is set at the end of the switching languageinformation, the CPU 101 switches the display language on the displayunit 105 to a language set at the beginning of the switching languageinformation (step S706). In the step S706, when, for example, thedisplay language is “French” set at the end of the switching languageinformation, the CPU 101 switches the display language to “Japanese” setat the beginning of the switching language information. The CPU 101 alsosets “Japanese” as the currently-displayed language information. The CPU101 requests the storage 206 to write the currently-displayed languageinformation. As a result, the currently-displayed language informationin which “Japanese” is set as the currently-displayed language is storedin the eMMC 109. After that, the CPU 101 ends the present process.

As a result of the determination in the step S705, when thecurrently-displayed language is not set at the end of the switchinglanguage information, the CPU 101 switches the display language on thedisplay unit 105. Specifically, the CPU 101 switches the displaylanguage on the display unit 105 to a language put after thecurrently-displayed language in the order of preferred languages in theswitching language information (step S707). In the step S707, when, forexample, the currently-displayed language is “Japanese”, the CPU 101switches the display language to “English” put after “Japanese” in theswitching language information. The CPU 101 also sets the language putafter the currently-displayed language in the switching languageinformation as the currently-displayed language information. The CPU 101requests the storage 206 to write the currently-displayed languageinformation and ends the present process.

As a result of the determination in the step S704, when thecurrently-displayed language is not included in the switching languageinformation, the CPU 101 switches the display language on the displayunit 105 to a language set at the beginning of the switching languageinformation (step S708). In the step S708, when, for example, thecurrently-displayed language is “Chinese” which is not included in theswitching language information, the CPU 101 switches the displaylanguage on the display unit 105 to “Japanese” set at the beginning ofthe switching language information. The CPU 101 also sets the languageset at the beginning of the switching language information as thecurrently-displayed language information. The CPU 101 requests thestorage 206 to write the currently-displayed language information andends the present process.

FIG. 8 is a flowchart showing the procedure of the currently-displayedlanguage information obtaining process in the step S702 in FIG. 7.

Referring to FIG. 8, the CPU 101 requests the storage 206 to obtain thecurrently-displayed language information (YES in step S801) and obtainsthe currently-displayed language information stored in the eMMC 109(step S802). Then, the CPU 101 sends a response to the storage 206 tothe effect that the currently-displayed language information has beenobtained (step S803) and ends the present process.

According to the embodiment described above, when the user depresses thelanguage switching button 302, the display language on the display unit105 is switched to one language that is one of a plurality of languagesset in the switching language information and is different from alanguage currently displayed on the display unit 105. As a result, evenwhen one user switches the display language on the display unit 105using the display language switching screen 408 before the other userdepresses the language switching button 302, the display language isreliably switched in response to the depression of the languageswitching button 302.

Moreover, in the embodiment described above, when thecurrently-displayed language is not included in the switching languageinformation, the display language on the display unit 105 is switched toa language set at the beginning of the switching language information.As a result, when the user depresses the language switching button 302while a language which is not included in the switching languageinformation is being displayed on the display unit 105, the displaylanguage on the display unit 105 is switched to a language put at thetop in the order of preferred languages by the user.

In the embodiment described above, when the currently-displayed languageis included in the switching language information, the display languageon the display unit 105 is switched to a language put after thecurrently-displayed language in the order of preferred languages in theswitching language information. Moreover, when the currently-displayedlanguage is included in the switching language information, and thecurrently-displayed language is set at the end of the switching languageinformation, the display language on the display unit 105 is switched toa language set at the beginning of the switching language information.As a result, when the user depresses the language switching button 302while a language included in the switching language information is beingdisplayed on the display unit 105, the display language on the displayunit 105 is switched according to the order of preferred languages inthe switching language information as expected by the user.

It should be noted that the setting screen 500 may be displayed on thedisplay unit 105 of the MFP 100 as well.

Moreover, although in the description of the embodiment described above,the language switching button 302 is an operating button displayed onthe display unit 105, this is not limitative, but the language switchingbutton 302 may be a hard key provided on the operating unit 107.

In the embodiment described above, when a language switching applicationis installed in the MFP 100, the CPU 101 may provide control such thatoperations on the display language switch 407 on the display settingscreen 406 are not received. This prevents issuance of an instruction toswitch the display language using the display language switching screen408, which is a factor preventing the display language from switching toanother language when the user depresses the language switching button302.

Moreover, in the embodiment described above, only languages included inthe switching language information may be selectable on the displaylanguage switching screen 408. This enables the user to select alanguage for switching from among languages likely to be actuallyselected and thus enables the user to easily select a language forswitching.

In the embodiment described above, when a display language displayedafter switching by the first switching process is not included in theswitching language information, the user may choose whether or not toset the display language in the switching language information.

FIG. 9 is a flowchart showing the procedure of a switching languageinformation changing process which is carried out by the MFP 100 in FIG.1.

The process in FIG. 9 is implemented by the CPU 101 executing a programstored in the ROM 102.

Referring to FIG. 9, when the display language on the display unit 105is switched by the first switching process (YES in step S901), the CPU101 switches the display language on the display unit 105 to a languageselected on the display language switching screen 408 (step S902). Then,the CPU 101 determines whether or not a currently-displayed languagewhich is the display language after the switching is included in theswitching language information (step S903).

As a result of the determination in the step S903, when thecurrently-displayed language is included in the switching languageinformation, the CPU 101 ends the present process. As a result of thedetermination in the step S903, when the currently-displayed language isnot included in the switching language information, the CPU 101determines whether or not it is possible to add a new language to theswitching language information (step S904). In the step S904, whenlanguage is not set in at least one of the setting fields 501 to 505 onthe setting screen 500, the CPU 101 determines that it is possible toadd a new language to the switching language information. On the otherhand, when languages are set in all of the setting fields 501 to 505 onthe setting screen 500, the CPU 101 determines that it is impossible toadd a new language to the switching language information.

As a result of the determination in the step S904, when it is possibleto add a new language to the switching language information, the CPU 101displays a dialogue 1000 in FIG. 10 on the display unit 105 (step S905).The dialogue 1000 is a screen on which the user chooses whether or notto add the currently-displayed language to the switching languageinformation. The dialogue 1000 has an “add” button 1001 and a “not add”button 1002. The “add” button 1001 is selected when the user gives aninstruction to add the currently-displayed language to the switchinglanguage information. The “not add” button 1002 is selected when theuser gives an instruction not to add the currently-displayed language tothe switching language information. The user selects the “add” button1001 or the “not add” button 1002 on the dialogue 1000. Then, the CPU101 determines whether the user has selected the “add” button 1001 orthe “not add” button 1002 on the dialogue 1000 (step S906).

As a result of the determination in the step S906, when the user hasselected the “not add” button 1002, the CPU 101 ends the presentprocess. As a result of the determination in the step S906, when theuser has selected the “add” button 1001, the CPU 101 adds thecurrently-displayed language to the end of the switching languageinformation (step S907). It should be noted that in the presentembodiment, as a result of the determination in the step S904, when itis possible to add a new language to the switching language information,the currently-displayed language may be automatically added to the endof the switching language information without the processes in the stepsS905 and 906 being carried out. After that, the CPU 101 ends the presentprocess.

As a result of the determination in the step S904, when it is impossibleto add a new language to the switching language information, the CPU 101displays a dialogue 1100 in FIG. 11 on the display unit 105 (step S908).The dialogue 1100 is a screen on which the user chooses whether or notto change the switching language information. The dialogue 1100 has a“change button 1101 and a “not change” button 1102. The “change” button1101 is selected when the user gives an instruction to change theswitching language information. The “not change” button 1102 is selectedwhen the user gives an instruction not to change the switching languageinformation. The user selects the “change” button 1101 or the “notchange” button 1102 on the dialogue 1100. Then, the CPU 101 determineswhether the user has selected the “change” button 1101 or the “notchange” button 1102 on the dialogue 1100 (step S909).

As a result of the determination in the step S909, when the user hasselected the “not change” button 1102, the CPU 101 ends the presentprocess. As a result of the determination in the step S909, when theuser has selected the “change” button 1101, the CPU 101 displays alanguage information changing screen 1200 in FIG. 12A on the displayunit 105 (step S910).

The language information changing screen 1200 is a screen for changinglanguages set in the switching language information. The languageinformation changing screen 1200 has setting fields 1201 to 1205 and anenter button 1206. In step S910 the language information changing screen1200 is displayed in a state where languages set in the switchinglanguage information have been entered into the setting fields 1201 to1205. For example, when “Japanese”, “English”, and “French” are set inthis order in the switching language information, the languageinformation changing screen 1200 with “Japanese” entered into thesetting field 1201, “English” entered into the setting field 1202, and“French” entered into the setting field 1201 is displayed on the displayunit 105. When the user selects any of the setting fields 1201 to 1205,for example, the setting field 1201, the language information changingscreen 1200 switches to a language selecting screen 1207 in FIG. 12B onthe display unit 105. List information indicating language types thatcan be displayed on the display unit 105 is displayed on the languageselecting screen 1207. When the user selects one language, for example,“Italian” from the list information on the language selecting screen1207, the language selecting screen 1207 switches to the languageinformation changing screen 1200 on the display unit 105. In this case,“Italian” selected by the user on the language selecting screen 1207 hasbeen entered into the setting field 1201 on the language informationchanging screen 1200. The enter button 1206 is selected when the usergives an instruction to confirm the settings on the language informationchanging screen 1200. Then, the CPU 101 determines whether or not theuser has selected the enter button 1206 (step S911).

As a result of the determination in the step S911, when the user has notselected the enter button 1206, the process returns to the step S910. Asa result of the determination in the step S911, when the user hasselected the enter button 1206, the CPU 101 registers the settings onthe language information changing screen 1200 (step S912). As a result,the switching language information is updated to the settings configuredon the language information changing screen 1200. After that, the CPU101 ends the present process.

FIG. 13 is a flowchart showing the procedure of a variation of thedisplay language switching process in FIG. 7. The process in FIG. 13 isalso implemented by the CPU 101 executing a program in the ROM 102 aswith the process in FIG. 7. In the process in FIG. 13, it is assumedthat switching language information 1401 in FIG. 14A has already beenstored in the eMMC 109. In the switching language information 1401,“Japanese”, “English”, and “French” are set in this order, and settingvalue Nos indicating the order of preferred languages are associatedwith the respective languages. In the process in FIG. 13, it is alsoassumed that to switch the display language on the display unit 105,only the language switching button 302 can be used, and the displaylanguage switching screen 408 cannot be used.

Referring to FIG. 13, when the user depresses the language switchingbutton 302 (YES in the step S701), the CPU 101 reads out the switchinglanguage information 1401 (step S1301). Then, the CPU 101 sets settingvalues 1402 in FIG. 14B. The setting values 1402 include a languagesetting value No and a max setting value No. The language setting valueNo is a setting value No indicating the currently-displayed language.The max setting value No is a lowest level setting value No amongsetting value Nos with which languages are associated in the switchinglanguage information 1401. After that, the CPU 101 determines whether ornot the language setting value No is smaller than the max setting valueNo (step S1302).

As a result of the determination in the step S1302, when the languagesetting value No is smaller than the max setting value No, the CPU 101updates the setting values 1402 by adding one to the language settingvalue No (step S1303). Then, the CPU 101 switches the display languageon the display unit 105 to a language indicated by the language settingvalue No of the setting values 1402 updated in the step S1303 (stepS1304) and ends the present process.

As a result of the determination in the step S1302, when the languagesetting value No is not smaller than the max setting value No, that is,the language setting value No is the same as the max setting value No,the CPU 101 updates the setting values 1402 by setting the languagesetting value No at 1 (step S1305). Then, the CPU 101 switches thedisplay language on the display unit 105 to a language indicated by thelanguage setting value No of the setting values 1402 updated in the stepS1305 (step S1306) and ends the present process.

In the embodiment described above, to switch the display language on thedisplay unit 105, the user may be allowed to make a setting as towhether only the language switching button 302 or both the languageswitching button 302 and the display language switching screen 408 canbe used. For example, after carrying out the process in the step S701,the CPU 101 makes a determination as to settings made by the user asdescribed above. When the setting that allows use of only the languageswitching button 302 is made, the CPU 101 carries out the processes inthe step S1301 and the subsequent steps. When the setting that allowsuse of both the language switching button 302 and the display languageswitching screen 408 is made, the CPU 101 carries out the processes inthe step S702 and the subsequent steps.

OTHER EMBODIMENTS

Embodiment(s) of the present invention can also be realized by acomputer of a system or apparatus that reads out and executes computerexecutable instructions (e.g., one or more programs) recorded on astorage medium (which may also be referred to more fully as a‘non-transitory computer-readable storage medium’) to perform thefunctions of one or more of the above-described embodiment(s) and/orthat includes one or more circuits (e.g., application specificintegrated circuit (ASIC)) for performing the functions of one or moreof the above-described embodiment(s), and by a method performed by thecomputer of the system or apparatus by, for example, reading out andexecuting the computer executable instructions from the storage mediumto perform the functions of one or more of the above-describedembodiment(s) and/or controlling the one or more circuits to perform thefunctions of one or more of the above-described embodiment(s). Thecomputer may comprise one or more processors (e.g., central processingunit (CPU), micro processing unit (MPU)) and may include a network ofseparate computers or separate processors to read out and execute thecomputer executable instructions. The computer executable instructionsmay be provided to the computer, for example, from a network or thestorage medium. The storage medium may include, for example, one or moreof a hard disk, a random-access memory (RAM), a read only memory (ROM),a storage of distributed computing systems, an optical disk (such as acompact disc (CD), digital versatile disc (DVD), or Blu-ray Disc (BD)™),a flash memory device, a memory card, and the like.

While the present invention has been described with reference toexemplary embodiments, it is to be understood that the invention is notlimited to the disclosed exemplary embodiments. The scope of thefollowing claims is to be accorded the broadest interpretation so as toencompass all such modifications and equivalent structures andfunctions.

This application claims the benefit of Japanese Patent Applications No.2018-052790, filed Mar. 20, 2018 and No. 2018-225119, filed Nov. 30,2018, which are hereby incorporated by reference herein in its entirety.

What is claimed is:
 1. An information processing apparatus that has atouch panel and switches a display language on the touch panel,comprising: a display control unit configured to cause the touch panelto display a first language switching button and a second languageswitching button for switching the display language on the touch panel;a first switching unit configured to receive a selection of the firstlanguage switching button from a user and switch the display language onthe touch panel to a language selected by the user from a list oflanguages displayed on the touch panel; a second switching unitconfigured to, according to selection of the second language switchingbutton by a user, switch the display language on the touch panel to oneof a plurality of languages associated with the second languageswitching button based on a display order of the plurality of languages,the plurality of languages and the display order being set by a user inadvance; and an obtaining unit configured to obtain a language currentlydisplayed on the touch panel, switched by at least the first switchingunit out of the first switching unit and the second switching unit,according to selection of the second language switching button by auser, wherein in a case where the second language switching button isselected by the user, the second switching unit switches the displaylanguage on the touch panel to a language put after the currentlydisplayed language in the display order of the plurality of languages,different from the language obtained by the obtaining unit based on thedisplay order.
 2. The information processing apparatus according toclaim 1, wherein switching language information in which the pluralityof languages is set is stored, and in a case where a language currentlydisplayed on the touch panel is not included in the switching languageinformation, the second switching unit switches the display language onthe touch panel to a language set at a beginning of the switchinglanguage information.
 3. The information processing apparatus accordingto claim 2, wherein in a case where a language currently displayed onthe touch panel is included in the switching language information, thesecond switching unit switches the display language on the touch panelto a language put after the language currently displayed on the touchpanel in the switching language information.
 4. The informationprocessing apparatus according to claim 2, wherein in a case where alanguage currently displayed on the touch panel is included in theswitching language information, and the language currently displayed onthe touch panel is set at an end of the switching language information,the second switching unit switches the display language on the touchpanel to a language set at a beginning of the switching languageinformation.
 5. The information processing apparatus according to claim1, wherein the information processing apparatus is an image formingapparatus that carries out an image forming process.
 6. A control methodfor an information processing apparatus that has a touch panel andswitches a display language on the touch panel, comprising: a displaycontrol step of causing the touch panel to display a first languageswitching button and a second language switching button for switchingthe display language on the touch panel; a first switching step ofreceiving a selection of the first language switching button from a userand switching the display language on the touch panel to a languageselected by a user from a list of languages displayed on the touchpanel; a second switching step of, according to selection of the secondlanguage switching button by a user, switching the display language onthe touch panel to one of a plurality of languages associated with thesecond language switching button based on display order of the pluralityof languages, the plurality of languages and the display order being setby a user in advance; and an obtaining step of obtaining a languagecurrently displayed on the touch panel, switched by at least the firstswitching unit out of the first switching unit and the second switchingunit, according to selection of the second language switching button bya user, wherein in a case where the second language switching button isselected by the user, the second switching step switches the displaylanguage on the touch panel to a language put after the currentlydisplayed language in the display order of the plurality of languages,different from the language obtained in the obtaining step based on thedisplay order.
 7. A non-transitory computer-readable storage mediumstoring a program for causing a computer to execute a control method foran information processing apparatus that has a touch panel and switchesa display language on the touch panel, the control method for theinformation processing apparatus comprising: a display control step ofcausing the touch panel to display a first language switching button anda second language switching button for switching the display language onthe touch panel; a first switching step of receiving a selection of thefirst language switching button from a user and switching the displaylanguage on the touch panel to a language selected by a user from a listof languages displayed on the touch panel; a second switching step of,according to selection of the second language switching button by auser, switching the display language on the touch panel to one of aplurality of languages associated with the second language switchingbutton based on a display order of the plurality of languages, theplurality of languages and the display order being set by a user inadvance; and an obtaining step of obtaining a language currentlydisplayed on the touch panel, switched by at least the first switchingunit out of the first switching unit and the second switching unit,according to selection of the second language switching button by auser, wherein in a case where the second language switching button isselected by the user, the second switching step switches the displaylanguage on the touch panel to a language put after the currentlydisplayed language in the display order of the plurality of languages,different from the language obtained in the obtaining step based on thedisplay order.